package com.yeyks.commonReference.service.vip;

import com.yeyks.commonReference.pojo.param.minivipcard.MiniCardWithdrawalParam;
import com.yeyks.vip.dal.domain.MiniCardCommissionBill;
import com.yeyks.vip.dal.domain.MiniCardCommissionOverview;
import com.baomidou.mybatisplus.extension.service.IService;


/**
 * <p>
 * 精选小vip售卡佣金总览表 服务类
 * </p>
 *
 * @author yun
 * @since 2020-01-06
 */
public interface MiniCardCommissionOverviewService extends IService<MiniCardCommissionOverview> {

    /**
     * 获取用户的账户信息
     *
     * @param accountId   账户id
     * @param accountType 账户类型 {@link MiniCardCommissionOverview}
     * @return
     */
    MiniCardCommissionOverview getOverview(Integer accountId, Integer accountType);

    /**
     * 佣金提现
     *
     * @param param {@link MiniCardWithdrawalParam}
     * @return
     */
    Boolean withdraw(MiniCardWithdrawalParam param);

    /**
     * 订单返佣
     *
     * @param accountId   账户id
     * @param accountType 账户类型
     * @param orderNo     订单号
     * @param amount      佣金
     * @return
     */
    Boolean orderCommission(Integer accountId, Integer accountType, String orderNo, Integer amount);


    /**
     * 提现申请拒绝
     *
     * @param orderNo 提现订单号
     * @return
     */
    Boolean reject(String orderNo);
}
